/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package com.mycompany.jsf2.service.impl;

import com.mycompany.jsf2.dao.IPessoaDAO;
import com.mycompany.jsf2.entity.Pessoa;
import com.mycompany.jsf2.service.IService;
import java.util.List;
import org.hibernate.exception.ConstraintViolationException;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

@Service
public class ServiceImp implements IService {

    @Autowired
    private IPessoaDAO iDAO;

    @Transactional
    public List<Pessoa> retornaListaPessoas() {
        return iDAO.buscaTodos();
    }

    public void adiciona(Pessoa p) throws Exception{
        
        try{
            iDAO.salva(p);
        }catch(ConstraintViolationException e){
            throw new Exception("Ja existe registro");
        }
        
    }
    
       @Override
    public void alterar(Pessoa pessoa) {
       iDAO.atualiza(pessoa);
    }
       
   @Override
    public void deletar(Pessoa pessoa) {
        iDAO.exclui(pessoa);
    }
       

    /**
     * @param iPessoaDAO the iPessoaDAO to set
     */
    
    public void setiDAO(IPessoaDAO iDAO) {
        this.iDAO = iDAO;
    }

 
 
}